/*FONTS*/
@font-face {
    font-family:'CustomFont';
    src: url('../_private/fonts/StargateSketched-Regular.ttf') format('truetype');
    font-weight:100;
    font-style: normal;
    letter-spacing: -10px;
}

.more{
    font-family: 'CustomFont', sans-serif;
    font-size: 1.5em;
}
.viewMore{
    font-family: 'CustomFont', sans-serif;
    font-size: 1.5em;
}
.topNavText{
    font-family: 'CustomFont', sans-serif;
    font-size: 1.5em;
    }
.mainText{
    font-family: 'CustomFont', sans-serif;
    font-size: 7em;
    }
.subText{
    font-family: "eurostile", sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 2em;
    }
.chatText{
    font-family: "eurostile", sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 2em;

    }
.articleHeadingText{
    font-family: "eurostile", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.2em;
    }
.paragraphBodyText{
    font-family: 'CustomFont', sans-serif;
    font-size: 1.5em;
    }


.copyFooter{
    font-family: "Tilt Neon", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings:
      "XROT" 0,
      "YROT" 0;
    font-size: 0.8em;
    }

/* COLOUR*/
.darkblueBg{
    background-color: #0B0227;
    }
.whiteText{
    color: #fff;
    }
.darkblueText{
    color: #0B0227;
}

body{
    margin: 0px;
}

.video-container {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* Aspect ratio for 16:9 */
    height: 0;
    overflow: hidden;
    border-radius: 25px;
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.passionsyncimage{
    width: 70%;
    padding: 20px;
    border-radius: 25px;
}

.passiontable{
    background-color: #ffffffaf;
    border-radius: 25px;
}

.discworldimage{
    width: 70%;
    padding: 20px;
    border-radius: 25px;
    margin-left:13% ;
}

.discworldtable{
    background-color: #ffffffaf;
    border-radius: 25px;
}

.indexSection{
    background-color: #a51e22;
    border-radius: 25px;
    width: 60vw;
    height: 52.5vh;
    background-size: cover;
    margin-top:5%;
    margin-bottom: 5%;
    margin-left: 20%;
    display: flex; /* Enables flexbox layout */
    align-items: top; /* Vertically aligns the image and aside */
    gap: 15vw; /* Space between the image and the aside */
}

.sideImageIndex{
    position: relative;
    width: 20vw;
    height: auto;
    margin-top:15%;
    margin-left: 20%;
    border-radius: 25px;
    margin-bottom: 50px;
}

.indexAside{
    display:inline-block;
    width: 28vw;
    padding: 20px;
}

/*HEADER START*/
header{
background-color: #a51e22;
    background-size: cover;
    background-position: -100px;
    width: 100%;
    height: 200px;
    position: relative;
}

#menu, #close{
    width: 50px;
    height: 50px;
    background-size: cover;
    position: absolute;
    top: 50px;
    right: 30px;
    display: none;
    opacity: 0;
}

#menu{
    background-image: url("../_images/icons/Menu.png");
    opacity: 1;
    height: 80px;
    width: 80px;
}

#close{
    background-image: url("../_images/icons/Close.png");
    height: 80px;
    width: 80px;
    opacity: 1;
    z-index: 12;
}

#menu:hover, #close:hover{
    opacity: 70%;
}

#logo{
    width: 370px;
    height: 200px;
    background-image: url("../_images/general/header-logo.png");
    background-size: cover;
    position: absolute;
    border-left: 25px;
    border-top: 25px;
    left: 40px;
    top: 0px;
}

#social{
    position: absolute;
    top: 30px;
    right: 30px;
}

.socialIcon{
    height: 40px;
    padding-left: 26px;
    padding-top: 8px;
}

.socialTable{
    margin-left: 0px;
    margin-top: -80px;
    padding-right: 20px;
    padding-bottom: 15px;
}

#social img{
    vertical-align: bottom;
    padding-left: 10px;
    padding-right: 10px;
    opacity: 1;
}

#social img:hover{
    opacity: 70%;
}

#topLinks{
    font-size: 2em;
    position: absolute;
    bottom: 0px;
    right: 40px;
}

#topLinks ul li{
    display: inline-block;
    font-size: 2rem;
    padding: 0px 10px 0px 10px;
}

#topLinks ul li a:link, #topLinks ul li a:visited{
    color: white;
    text-decoration: none;
}

#topLinks ul li a:hover{
    color: #000000;
}
/* HEADER END */

main{
    background-image: url("../_images/general/background.png");
    background-size:auto;
    background-position: -100px;
    width: 100%;
    position: relative;
}

/* JUMP TO MENU START */
#jumpMenu{
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
}

.topSection{
    height: 250px;
    width: 250px;
    padding: 10px;
    border-radius: 25px;
}

.topSection:hover{
opacity: 0.7;
height: 260px;
width: 260px;
    transition: all 0.3s ease;
}

h1{
    text-align: center;
    color: white;
    margin-left: -12px;
}

h2{
    text-align: left;
    color: white;
    margin-left: -12px;
}

.button{
    width: 130px;
    height: 47px;
    background-image: url("../_images/icons/buttonVisited.png");
    background-size: cover;
    text-align: center;
    border: transparent;
    background-color: transparent;
    text-align: middle;
    padding: 10px;
    margin-top: 20px;
}

button:hover{
    background-image: url("../_images/icons/buttonHover2.png");
}

button:visited{
    background-image: url("../_images/icons/buttonHover.png");
}

.viewMore{
    text-decoration: none;
    color:white;
    text-align: center;
    font-size: 1.7rem;
    padding-left: 10px;
}

.viewMore:hover{
    color: black;
    font-size: 1.7em;
    text-decoration: none;
}

.viewMore:visited{
    color: white;
    font-size: 1.7em;
    text-decoration: none;
}

.buttonSubmit{
    width: 165px;
    height: 60px;
    background-image: url("../_images/icons/buttonNormal.png");
    background-size: cover;
    text-align: center;
    border: transparent;
    background-color: transparent;
    text-align: middle;
    padding: 10px;
    margin: 30px auto;
}

.buttonSubmit:hover{
    background-image: url("../_images/icons/buttonHover.png");
}

.buttonSubmit:visited{
    background-image: url("../_images/icons/buttonVisited.png");
}

.button:hover{
    background-image: url("../_images/icons/buttonHover.png");
}

.button:visited{
    background-image: url("../_images/icons/buttonVisited.png");
}

.more{
    color:white;
    text-align: center;
    font-size: 1.7rem;
    text-decoration: none;
    padding-left: 10px;
    top: 20px;
}

.more:hover{
    color: white;
    font-size: 1.7em;
}

.more:visited{
    color: white;
    font-size: 1.7em;
}

/*INDEX PAGE*/

#indexImg{
    width: 350px;
    height: 350px;
    object-fit: cover;
    border-radius: 25px;
    margin-top: 20px;

}

#contents{
    display: grid;
    grid-template-columns: 30% 30% 30%;
    justify-content: space-evenly;
}
 
article{
     text-align: left;
}

/*NONINDEX PAGE STYLING*/

#infoPages{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

#photoImg{
    width: 200px;
}

.sideImage{
    position: relative;
    width: 400px;
    height: auto;
    margin-top: 20px;
    margin-left: 50px;
    border-radius: 25px;
    margin-bottom: 50px;
}

#aboutMe{
    right: 15px;
    padding: 25px;
    text-align: justify;
    margin-bottom: 100px;
    margin-top: -100px;
}

.specificAside{
    display: inline-block;
    width: 700px;
    vertical-align: top;
    padding-top: 15px;
    margin-right: 10vw;
    background-color: #000000bf;
}

.bulletPoints{
    text-align: justify;
}

#chatTable img{
    opacity: 1;
}

#chatTable img:hover{
    opacity: 70%;
}

#chatTable{
    margin-top: 0px;
}

#footerServices{
    margin-top: 200px;
    align-items: center;
}

#holder{
position: absolute;
margin-left: 10vw;
margin-bottom: 70vh;
}

#motions{
    padding: 20px;
    margin-left: 10vw;
}

#motions img{
    padding: 5px;
}

#links img{
    padding: 5px;
}

#links{
    padding: 20px;
    margin-left: 5vw;
}

@media screen and (min-width: 1334px){
    #holder{
        margin-left: 0px;
    }
}

.testimonialsAside{
align-items:center;
width: 70vw;
margin-left: 15vw;
background-color: #000000bf;
}

.tableAside{
    margin-left: 30vw;    
    margin-top: 0px;
    background-color: #000000bf;
}

.textAside{
    margin-top: 0px;   
    background-color: #000000bf;
}

/* Below is the tablet styling*/

@media screen and (min-width: 677px) and (max-width: 1125px){
.cus{
    color:#a51e22;
}
    .indexSection{
        background-color: #a51e22;
        border-radius: 25px;
        width: 80vw;
        height: 70vh;
        background-size: cover;
        margin-top:5%;
        margin-bottom: 5%;
        margin-left: 10%;
        display: flex; /* Enables flexbox layout */
        align-items: top; /* Vertically aligns the image and aside */
        gap: 15vw; /* Space between the image and the aside */
    }

    .indexAside{
        display:inline-block;
        width: 40vw;
        padding: -50px;
    }

    #topLinks ul li a:hover{
        color: #a51e22;
    }
    header{
        height: 350px;
    }
    #menu{
        display: block;
        opacity: 1;
    }
    #logo{
        position: relative;
        margin: 0 auto;
        left:-20px;
        top: 30px;
        background-position: center;
    }
    #close{
        left: 45vw;
        opacity: 1;
        transition: all 0.4s ease;
    }
    #social{
        position: relative;
        top: 10%;
        right: 0px;
        text-align: center;
        margin-top: 10px;
    }

    #footerServices{
        margin-top: 65vw;
    }

    #topLinks{
        bottom: 0px;
        right: 0px;
        top: 0px;
        left:-100%;
        width: 55vw;
        height: 100vh;
        background-color: #000000;
        border-color: 5px solid #fff ;
        border-radius: 25px;
        padding-top: 100px;
        transition: all 0.5s ease;
        z-index: 10;
    }
    .chatText{
        font-family: "eurostile", sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 1.5em;
        }
    #topLinks ul li{
        display: block;
        padding-top: 20px;
    }
    #subMenu1{
        position: relative;
        background-color: transparent;
        padding: 5px;
        border: none;
        width: 118px;
        opacity: 1;
        visibility: visible;
    }
    #subMenu1 li{
        border-bottom: solid #AF2499 1px;
    }
    #motions{
        padding: 20px;
        margin-left: 30vw;
    }
    #links{
        padding: 20px;
        margin-left: 30vw;
    }
    #jumpMenu{
        flex-direction: column;
    }

    #contents{
        grid-template-columns: 30% 30% 30%;
        grid-template-rows: 50% 50% 50%;
    }

    #indexImg{
        margin-right: 30px;
        margin-left: -28%;
        width: 250px;
        height: 250px;
    }
    
    article {
        width: 73%;
        margin: 10px auto 10px auto;
    }

    .sideImage{
        width: 200px;
        height: auto;
        margin-top: 40%;
        margin-left: 20%;
    }

    /* styling of the accordion tab titles */
    .tab1title, .tab2title, .tab3title, .tab4title{
        width: 50vw;
        margin-left: 70px;
    } 

    /* styling fo accordion tab information text */
    .tab1body, .tab2body, .tab3body, .tab4body{
        text-align: center;
        width: 50vw;
        margin-left: 70px;
    }

    #holder{
        margin-left: 0px;
        }
}

/*Styling for smartphone screens*/

@media screen and (max-width: 676px) {

    .indexSection{
        background-color: #a51e22;
        border-radius: 25px;
        width: 60vw;
        height: 105vh;
        background-size: cover;
        margin-top:5%;
        margin-left: 20%;
        display:block; /* Enables flexbox layout */
        align-items: center; /* Vertically aligns the image and aside */
    }
    .sideImageIndex{
        width: 35vw;
        position: relative;
        margin: 0 auto;
        left:27%;
        top: 20px;
        background-position: center;
    }
    .indexAside{
        background-position: center;
        margin-left: 20px;
        width:45vw;
    }
    #topLinks ul li a:hover{
        color: #a51e22;
    }
    
    header{
        width:100vw;
        height: 100vh;
    }
    #menu{
        display: block;
        opacity: 1;
    }
    #close{
        right: 35px;
        opacity: 1;
        transition: all 0.4s ease;
    }
    #logo{
        position: relative;
        margin: 0 auto;
        left:-20px;
        top: 150px;
        background-position: center;
    }

    #social{
        position: relative;
        top: 250px;
        right: 0px;
        width: 80%;
        margin: 0 auto;
        text-align: center;
    }
    #footerServices{
        margin-top: 140vw;
    }
    #social img{
        height: 50px;
        width: auto;
        padding-top: 15px;
        padding-bottom: 15px;
    }
    #motions{
        padding: 20px;
        margin-left: 30vw;
    }
    #links{
        padding: 20px;
        margin-left: 30vw;
    }
    .chatText{
        font-family: "eurostile", sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 1.3em;
        }
    #socialBottom img{
        height: 80px;
        width: auto;
        padding-left: 10px;
    }

    #topLinks{
        bottom: 0px;
        right: 0px;
        top: 0px;
        left:-100%;
        width: 100vw;
        height: 100vh;
        background-color: black;
        padding-top: 100px;
        transition: all 0.5s ease;
        z-index: 10;
    }

    #topLinks ul li{
        display: block;
        padding-top: 20px;
    }
    #subMenu1{
        position: relative;
        background-color: transparent;
        padding: 5px;
        border: none;
        width: 118px;
        opacity: 1;
        visibility: visible;
    }
    #subMenu1 li{
        border-bottom: solid #b6e6f4 1px;
    }

    #jumpMenu, #infoPages{
        flex-direction: column;
    }

    #contents{
        grid-template-columns: 50% 50%;
        grid-template-rows: 30% 30% 30% 30%;
    }

    #indexImg{
        margin-right: 30px;
        margin-left: -18%;
        width: 250px;
        height: 250px;
    }
    
    article {
        width: 73%;
        margin: 10px auto 10px auto;
    }

    #photoImg{
        width: 80%;
    }
    
    .sideImage{
        margin-top: 10%;
        margin-left: 5%;
    }

    aside{
        margin-left: -120px;
    }

    #aboutMe{
        width: 60vw;
        margin-left: 150px;
    }

    .testimonialHeading{
        
        margin-left: 200px;
    }

    /* styling of the accordion tab titles */
    .tab1title, .tab2title, .tab3title, .tab4title{
        width: 80vw;
        margin-left: 0px;
    } 

    /* styling fo accordion tab information text */
    .tab1body, .tab2body, .tab3body, .tab4body{
        text-align: center;
        width: 80vw;
        margin-left: 0px;
    }

    #holder{
        margin-left: 150px;
        }
    
    #accordionText{
        margin-left: -50px;
    }
    .testimonialsAside{
        margin-left: -100px;
    }
}

#thatGuy{
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    padding: 10px;
}

footer{
    background-color: #a51e22;
    background-size: cover;
    background-position: -100px;
    top: 0px;
    left: -10px;
    height: 170px;
    width: 100vw;
    position: relative;
}

.footerImage{
    margin-top: 20%;
    margin-bottom: 10%;
    margin-left: -100%;
    height: 100px;
}

#subMenu2{
    font-size: 0.5em;
}

#socialBottom{
    position: relative;
    vertical-align: super;
    top: 40px;
    right: 15px;
}

#socialBottom img{
    vertical-align: bottom;
    align-items: center;
    opacity: 1;
}

#socialBottom img:hover{
    opacity: 70%;
}

/* FORM STYLING */
#formSection{
    margin-left: 25vw;
    width: 60vw;
    margin-bottom: 100px;
    background-color: #000000bf;
}





/* styling of the accordion tab titles */
/* .tab1title, .tab2title, .tab3title, .tab4title{
    width: 80vw;
    margin-left: 150px;
} */

/* styling fo accordion tab information text */
/* .tab1body, .tab2body, .tab3body, .tab4body{
    text-align: center;
    width: 80vw;
    margin-left: 150px;
} */

/* hover height change for accordion title tabs */
/* .tab1title:hover + .tab1body, 
.tab2title:hover + .tab2body, 
.tab3title:hover + .tab3body, 
.tab4title:hover + .tab4body 
{
    height: 100px;
} */